This invention relates to the detection and correction of known channels in error in a parallel multi-channel data handling system, such as a magnetic tape storage system. More particularly, the invention relates to increasing the number of correctable channels in error recorded on the same medium without increasing the number of redundant channels.
In magnetic tape storage systems, industry standards have governed tape size, data format, and recording density. Accordingly, 1/2" width tape has been used for recording nine tracks thereon. By custom, data are recorded parallel by bit and serially by byte across the tape. This format advantageously permits the use of the same nine track head for both the reading or writing of data on tapes at different densities.
Magnetic tape is soft and pliable. Unlike other forms of moving magnetic storage media, such as rigid magnetic disks, magnetic tape storage systems require the tape to move in non-uniform contact relation with one or more fixed heads as data are being transferred to or from the tape. Any loose particles of debris between head and tape or spots on tape with missing oxide causes loss of signal amplitude and resultant errors in data in one or more channels. Under the circumstances, it is possible for the read-back clock in the erroneous channel to loose synchronization with the data in other channels. Consequently, the recording and playback of data from the tape may be in error over very long segments. In this regard, the noisy length of tape poses a data recovery problem unlike that of either single shot noise or burst noise. Characteristically, single shot and burst noise induced errors are usually of finite duration. The reconstitution of the infected data is obtained by the use of error checking codes with cyclic properties. These codes are complex both in their theory and use.
Illustrative of a magnetic tape storage device capable of variable density recording and of utilizing a cyclic code for error detection and correction purposes is the IBM 3803 controller used with the IBM 3420 models 4, 6, and 8 tape drives. The cyclic code actually employed is described in Hong et al U.S. Pat. No. 3,868,632.
The present commercial practice is to reserve two out of nine channels for recording redundant information about the remaining seven channels of the set. This enables up to two channels in error to be subsequently corrected. In the case of recording two or more logically independent sets of parallel channels on a tape in which two redundant channels per set are reserved, reference should be made to co-pending U.S. Patent application Ser. No. 863,653, filed on Dec. 23, 1977 in the name of Arvind M. Patel. This co-pending application discloses a method and means of taking advantage of the unused redundancy of one set in order to assist in correcting multiple channels in error in another set.
The prior art of error detection and correction on a single nine channel data handling system is typified by Patel U.S. Pat. No. Re. 28,923; Hong et al U.S. Pat. No. 3,868,632; Louis, IBM Technical Disclosure Bulletin, Vol. 14, p. 38-46, May 1972; and Prusinkiewicz et al, "A Double Track Error Correction Code for Magnetic Tape," IEEE Transactions on Computers, June 1976, at pages 642 through 645.
Both the Patel and Hong et al codes require partitioning the information into consecutive blocks and calculating checking bits for each individual block using a cyclical parity encoding scheme. These are subsequently recorded. Upon recovery of the data from the parallel channels the checking bits of each block must, in effect, be recalculated and compared. The arrangements for implementing such cyclic codes belie their complexity and expense. Significantly, the checking information obtained when one data block is recovered is merely thrown away when recovery is made of the next data block.
The Prusinkiewicz et al reference discloses a coding arrangement which uses a vertical parity check and a single diagonal parity check as stored on two redundant channels for the purpose of correcting two channels in error. Lastly, Louis describes a method of record recovery from a plurality of tapes by the calculation of a data value replacing unavailable data from a simple parity modulo 2 added to the remaining available data.